﻿using System;

namespace Microsoft.SPOT.Hardware
{
    public class NativeEventDispatcher : IDisposable
    {
//        protected NativeEventHandler m_callbacks;
        protected bool m_disposed;
//        protected NativeEventHandler m_threadSpawn;

        public NativeEventDispatcher(string strDriverName, ulong drvData)
        {
        }

        public event NativeEventHandler OnInterrupt;

        protected void DoOnInterrupt(uint data1, uint data2, DateTime time)
        {
            if (OnInterrupt != null)
                OnInterrupt(data1, data2, time);
        }

        public virtual void DisableInterrupt()
        {
        }

        public virtual void Dispose()
        {
        }

        protected virtual void Dispose(bool disposing)
        {
        }

        public virtual void EnableInterrupt()
        {
        }
    }
}
